Corporate data are increasingly mobile, distributed, and prolific. Data are routinely taken out of physically secured facilities to accommodate workers who travel or have flexible working habits. Data are also distributed geographically as corporations' business interests take them into other cities, states, and countries. Data are prolific in both the rate at which they are generated and in the multi-media formats in which they can be presented. All of these forces drive the evolution of new storage media, higher bandwidth subsystems, and network-connected storage that require that data be protected both while in transit and while at rest.
Data-at-rest (DAR) encryption technology prevents the unauthorized use of data stored on lost or stolen storage devices, thereby preventing these data from being spread on the Internet or other networks. DAR encryption acts as an automated and quick response mechanism to prevent the inevitable loss and theft of storage devices from becoming the loss and theft of the data stored on those devices.
One of the challenges of protecting data stored on various storage devices associated with a computing platform is that encryption technologies and key management strategies differ depending upon the entity performing the encryption. Storage hardware may have built-in encryption capabilities that are unique to the storage hardware vendor, thereby requiring use of the storage hardware vendor's tools to access the data. Software-based encryption requires different key generation and management services than hardware-based encryption and may therefore require use of the software vendor's tools to access the software-encrypted data. Planning for key recovery and migration of data in the event of theft or loss may therefore require use of a number of different vendors' tools to protect and/or recover all of the data associated with a computing platform.
Another challenge of protecting data stored on storage devices is that the storage devices themselves may be protected using a password protection scheme. For example, in accordance with the Advanced Technology Attachment (ATA) specification, a disk lock is a built-in security feature of a hard disk drive. The ATA specification requires that a disk has two passwords: a User password and a Master password. A disk can be locked in two modes: High security mode or Maximum security mode. In High security mode, the disk can be unlocked with either the User or Master password, using the “SECURITY UNLOCK DEVICE” ATA command. There is an attempt limit, normally set to 5, after which the disk must be power cycled or hard-reset before unlocking can be attempted again. Also in High security mode the SECURITY ERASE UNIT command can be used with either the User or Master password.
In Maximum security mode, the disk cannot be unlocked without the User password. The only way to get the disk back to a usable state is to issue the SECURITY ERASE PREPARE command, immediately followed by the SECURITY ERASE UNIT command. In Maximum security mode the SECURITY ERASE UNIT command requires the User password and will completely erase all data on the disk. Thus, if the disk is password protected, set to Maximum security mode, and the User password is unknown, data on the disk is not recoverable.
Yet another challenge of protecting data stored on storage devices associated with a computing platform is that the platform may require authentication of user credentials before access to data on the associated storage devices is allowed. For example, some computing platforms are protected using Kerberos user authentication. Kerberos uses as its basis the symmetric Needham-Schroeder protocol. It makes use of a trusted third party, termed a key distribution center (KDC), which consists of two logically separate parts: an Authentication Server (AS) and a Ticket Granting Server (TGS). Kerberos works on the basis of “tickets” which serve to prove the identity of users.
The KDC maintains a database of secret keys; each entity on the network—whether a client or a server—shares a secret key known only to itself and to the KDC. Knowledge of this key serves to prove an entity's identity. For communication between two entities, the KDC generates a session key which they can use to secure their interactions. The security of the protocol relies heavily on participants maintaining loosely synchronized time and on short-lived assertions of authenticity called Kerberos tickets.
Under the Kerberos protocol, a client authenticates itself to the Authentication Server and receives a ticket. (All tickets are time stamped.) The client then contacts the Ticket Granting Server, and using the ticket it demonstrates its identity and asks for a service. If the client is eligible for the service, then the Ticket Granting Server sends another ticket to the client. The client then contacts the Service Server, and using this ticket it proves that it has been approved to receive the service.